package com.btobtob.a.biz.user.dto.command;

import com.alibaba.cola.dto.Command;

import java.util.Calendar;
import java.util.Date;

import com.google.type.DateTime;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.databind.PropertyNamingStrategies;
import com.fasterxml.jackson.databind.annotation.JsonNaming;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.ToString;

import org.springframework.format.annotation.DateTimeFormat;

@Data
@EqualsAndHashCode(callSuper=false)
@NoArgsConstructor
@AllArgsConstructor
@ToString
@JsonNaming(PropertyNamingStrategies.SnakeCaseStrategy.class)
public class WeatherForecastCmd extends Command {

//    @JsonSerialize(using = ToStringSerializer.class)
    private Long id;

    private Calendar zonedDatetime;

    private Date localDatetime;

    private String localDate;

    private Integer temperatureC;

    private String summary;

//    @DateTimeFormat(iso = DateTimeFormat.ISO.DATE_TIME)
//    private ZonedDateTime zonedDatetime;

//    @DateTimeFormat(pattern = "yyyy-MM-dd hh:mm:ss")
//    private LocalDateTime localDatetime;

//    @DateTimeFormat(iso = DateTimeFormat.ISO.DATE)
//    private LocalDate localDate;

}
